1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to an error concealment, and more particularly to error concealment that can selectively use error concealment techniques according to an error occurrence rate.
2. Description of the Prior Art
Recently, with the development of digital signal processing technology, a technique for compressing and transmitting a larger amount of moving image information through a transmission channel of a limited bandwidth has also been developed.
In the moving image standards such as MPEG, H.261 and H.263, a slice is adopted as a re-synchronization unit for a channel error process.
The slice is composed of many macro blocks, and a macro block has a size of 16×16 pixels, which is a unit for a motion compensation coding. Typically, a frame includes several slices according to the size of a normal image, and thus if a slice error occurs, even information of other slices would be lost.
Most moving image coding systems use both a variable length coding method and a motion compensation coding method. If an error occurs even in a bit of a bit stream, a considerable part of video information may be lost and the influence of the damaged part continues through several subsequent frames. Thus, when a decoder decodes the bit stream transmitted through the above-mentioned coding process, serious picture quality deterioration may be caused.
In order to solve these problems, diverse error concealment techniques for restoring the decoded image nearly to the original image by complementing the lost information by using normally-restored adjacent information have been proposed.
Among many error concealment techniques, a spatial error concealment technique that performs an error concealment in a frame where an error has occurred and a temporal error concealment technique that conceals an error occurring in the present frame using video information of several frames are mainly used.
A general digital television (TV) receiver, as shown in FIG. 1, includes a channel decoder unit 10 for restoring digital data by performing an RF demodulation and a channel decoding of a received channel signal, a demultiplexer unit 20 for extracting a video signal, an audio signal and program information such as an electronic program guide by demultiplexing the digital data restored by the channel decoder unit 10, a video decoder unit 30 and an audio decoder unit 40 for decoding the video signal and the audio signal, respectively, a parser 50 for parsing the program information, an error concealment unit 60 for detecting an error occurring in the decoded video signal and concealing the detected error, a video output unit 70 for outputting the error-concealed video signal and the parsed program information, and an audio output unit 80 for outputting the decoded audio signal.
The error concealment unit 60, as illustrated in FIG. 2, includes an error detection unit 61 for detecting the error from the video signal decoded by the video decoder unit 30, a spatial error concealment unit 62 and a temporal error concealment unit 63 for performing an error concealment of the detected error through a spatial error concealment technique and a temporal error concealment technique according to the kind of the decided video signal.
Here, the error detection unit 61 may detect the error by judging whether a syntax of the bit stream decoded by the video decoder unit 30 is true or false, through the decoding error occurring while the channel decoder unit 10 decodes the received RF signal, or through a degree of incompatibility between a specified macro block and adjacent macro blocks in the video frame decoded by the video decoder unit 30.
The spatial error concealment unit 62, as illustrated in FIG. 3a, performs a spatial error concealment with respect to a macro block 91a where an error has occurred in the present video frame 91 by using adjacent macro blocks 91b, 91c and 91d. This spatial error concealment is mainly applied to a still image or an intracoded block. For example, the spatial error concealment unit 62 conceals the error by copying a normal macro block among the adjacent macro blocks 91b, 91c and 91d into the macro block 91a where the error has occurred.
On the other hand, the temporal error concealment unit 63 conceals the error using motion vectors in the previous frame that precedes the present frame. The temporal error concealment unit 63, as illustrated in FIG. 3b, performs the error concealment by copying a macro block 93a of the previous frame 93, which is in the same position as a macro block 92a where the error has occurred in the present frame 92, into the macro block 92a. 
In order for the spatial error concealment unit 62 and the temporal error concealment unit 63 to perform the error concealment, a normal macro block should exist in the video frame that includes the macro block where the error has occurred, or in the previous video frame that precedes the video frame including the macro block where the error has occurred.
Accordingly, if the present video frame is seriously damaged and a normal macro block does not exist when the spatial error concealment unit 62 intends to conceal the error, or if a normal macro block does not exist in the previous frame when the temporal error concealment unit 63 intends to conceal the error, the error still remains in the video frame although the error has been concealed through the spatial error concealment unit 62 and the temporal error concealment unit 63, and it is difficult to provide a best-quality image to a user.
Korean Patent Unexamined Publication No. 2004-0089997 discloses a method of processing an error-occurring block in video data. According to this method, it is judged whether the difference of standard deviation between adjacent blocks exceeds a threshold value, and if the difference of standard deviation exceeds the threshold value, an error concealment process is performed while if the difference does not exceed the threshold value, the error concealment process is skipped. However, this method has the problem that it is difficult to perform the error concealment process if a normal macro block that is required for the error concealment process of the video data does not exist.